public abstract class BinaryNode<T> {                       //二叉树的二叉链表结点类，T指定结点的元素类型。
    public T data;                                          //数据域，存储数据元素。
    public BinaryNode<T> left,right;                        //地址域，分别指向左、右孩子结点

    public BinaryNode(T data, BinaryNode<T> left, BinaryNode<T> right){     //构造结点
        this.data=data;
        this.left=left;
        this.right=right;
    }
    public BinaryNode(T data){                              //构造元素为data的叶子结点
        this.data=data;
    }
    public abstract String toString();                      //返回结点数据域的描述字符串
    public abstract boolean isLeaf();                       //判断是否叶子结点
}
